Hightouchの拡張機能でFivetranをトリガーにHightouchの同期を実行してみた
こんにちは、スズです。
Hightouchの拡張機能を使用することで、Fivetranやdbt Cloudなどと連携することができます。Hightouchの拡張機能を使って、Fivetranのジョブの完了をトリガーとしてHightouchの同期の実行してみましたので、本記事でご紹介します。
構成
「Fivetranのジョブの完了をトリガーとしてHightouchの同期の実行」では、Fivetranでの同期と、Hightouchでの同期の2つの処理が行われることとなります。本記事で使用するFivetranとHightouchのそれぞれの構成を記載します。
Fivetranの構成
Fivetranでは、GoogleスプレッドシートのデータをSnowflakeに同期します。
- Connector:Googleスプレッドシート
- Destination:Snowflake
Googleスプレッドシートには以下のデータがあります。
DesitinationとなっているSnowflakeのデータベースには以下のデータがあります。これはFivetranで最初の同期を行った際に作成されたデータです。このあとFivetranで同期を行うと、IDが4と5のレコードが新しくSnowflakeに入力されることとなります。
Hightouchの構成
Hightouchでは、SnowflakeのデータをGoogleスプレッドシートに同期します。
- Source:Snowflake
- Destination:Googleスプレッドシート
ここで使用するGoogleスプレッドシートは、FivetranのConnectorに使用しているものとは別のスプレッドシートで、HightouchのDesitination用に新規に作成したものです。
FivetranのAPI Keyの作成
HightouchとFivetranを連携するにはFivetranのAPI keyが必要です。Fivetran側でAPI keyを作成して取得しておきます。Fivetranにログインし、ユーザー名のメニューを展開すると[API Key]という項目があります。この画面にて[Generate new API key]をクリックすると、API keyを作成できます。
Hightouchの拡張機能の設定
取得したFivetranのAPI keyを使って、Hightouchの拡張機能でFivetranの連携設定を行います。Hightouchにログインし、[Extensions]から[Fivetran]をクリックします。
[Configure extension]をクリックします。
Fivetran configurationにAPI keyとAPI secretを入力し、[Connect]をクリックします。
これでHightouchからFivetranの連携設定は完了です。
Hightouchの同期の設定
HightouchのSyncsに同期の設定を行います。Hightouchの[Syncs]を開き、[Add sync]をクリックします。
使用するModelを選択します。
Desitinationを選択します。今回はGoogleスプレッドシートをDesitinationに設定しています。
Googleスプレッドシートの同期の設定を行います。今回は「FROM_HIGHTOUCH」という名前のスプレッドシートの「シート1」に出力するように設定しています。設定後、[Continue]をクリックします。
同期のスケジュールとして[Fivetran]を選択します。[Fivetran]を選択すると、Schedule configurationという項目が表示されます。[Fivetran workspace]にはFivetranのコネクタを選択します。また、このスケジュールの有効期限を設定することもできます。設定後、[Finish]をクリックします。
これで同期の設定は完了です。
同期を実行してみた
最後に、Fivetranの同期を実行してHightouchの同期が実行されるかを確認します。Fivetranで当該のConnectorを開き、[Sync Now]をクリックして同期を実行します。
時間をおいてHightouchのSyncを確認すると、Hightouchの同期の実行が記録されています。
HightouchでDesitinationとして設定したGoogleスプレッドシートを確認すると、データが出力されています。IDが4と5のレコードも存在していますので、Fivetranで新しく同期したデータが、HightouchのDestinationにも同期されていることが確認できます。
最後に
Hightouchの拡張機能を使って、Fivetranのジョブの完了をトリガーとしてHightouchの同期の実行してみました。今回は分かりやすくGoogleスプレッドシートを使用していますが、FivetranとHightouchを使うことで、SalesforceとZendeskのユーザー情報をデータを同期するなど、ビジネスツール間のデータの同期を即時に行うことに利用できそうですね。